Now, I will perform a spatio-temporal kernel density estimate on the owin object which gives us insights into where and when conflict event occurrences are concentrated within the specified observation window.
Let’s plot our animated spatio-temporal KDE outputs for each quarter.
7.3.1 2024 Q1-2 STKDE
Observations
At the start of 2024 Q1, we see that the kernel density estimate of Myanmar conflicts tend to move sporadically where there are no specific patterns but in 2024 Q2, we start seeing conflict events occurring more intensely in Central and Southern Myanmar.
7.3.2 2023 Q1-Q4 STKDE
Observations
From 2023 Q1 to Q3, there is a noticeable cluster of conflict events happening in Central and Southern regions of Myanmar than the other parts of the country. In 2023 Q4, we can notice more dispersion in conflict events across Myanmar, spreading into Western and Eastern regions. Throughout 2023, conflict events are leastobserved in North Myanmar.
7.3.3 2022 Q1-Q4 STKDE
Observations
Similar to 2023, the spread of conflict events in 2022 is largely clustered in Central and Southen parts of Myanmar. However, we do see some jitters in conflict trends in 2022 Q1 with a rare sight of conflicts in the far North of Myanmar and occasional conflicts in Southern Myanmar.
7.3.4 2021 Q1-Q4 STKDE
Observations
Finally, armed conflicts in 2021 is by far the most random spread of armed conflicts throughout Myanmar. There is also a high intensity of conflicts in South Myanmar, particularly in the state of Yangon while we rarely see conflicts occurring in the extremeNorth of Myanmar.
7.3.5 OpenStreetMap in Myanmar - Spatio Temporal
We can observe the spatio-temporal conflict patterns per quarter using OpenStreetMap as well.
# Plot KDE Map on OpenStreetMapraster_quarters <-list('raster_2024','raster_2023','raster_2022','raster_2021')# Set tmap mode to viewtmap_mode('view')
tmap mode set to interactive viewing
# Function to create tmap for each rastercreate_tmap <-function(raster_var) { kde_fixed_output <-tm_basemap(server ="OpenStreetMap.HOT") +tm_basemap(server ="Esri.WorldImagery") +tm_shape(get(raster_var)) +# Dynamically get the raster variabletm_raster("layer",n =10,title =paste(raster_var),alpha =0.6,palette =c("#fafac3","#fd953b","#f02a75","#b62385","#021c9e")) +tm_shape(boundary_sf) +tm_polygons(alpha=0.1, id="DT") +tmap_options(check.and.fix =TRUE)return(kde_fixed_output)}# Create a list of tmap objects by iterating over the raster_quarters listtmap_list <-lapply(raster_quarters, create_tmap)# Arrange and display the tmapstmap_arrange(tmap_list, ncol =2, nrow =2, sync =TRUE)